package com.cy.rsspush.wx;

import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import jakarta.websocket.server.PathParam;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.*;

@Api(tags = "各项测试")
@RestController
@RequestMapping("/loginInfo")
public class SendWeChatMessageController {

    //    /*
//     * 功能: 公众号：appid,这里也可以配置到yaml 文件里面
//     */
//
//    @Value("${wx.appId}")
//    private String appId;
//
//    /*
//     * 功能: 公众号：appsecret
//     */
//
//    @Value("${wx.appsecret}")
//    private String appsecret;
    private final Logger logger = LoggerFactory.getLogger(SendWeChatMessageController.class);


    @ApiOperation("获取token")
    @GetMapping("/getToken")
    public Object getToken(@PathParam("grantType") String grantType, @PathParam("appId") String appId, @PathParam("secret") String secret) throws Exception {
        String tokenUrl = WeChatUrlEnum.TOKEN.getUrl();
        String params = "grant_type=" + grantType + "&appid=" + appId + "&secret=" + secret;
        logger.info("请求地址为：" + tokenUrl + params);
        String tokenResponse = HttpUtils.sendGet(tokenUrl, params);

        JSONObject jsonObject = JSON.parseObject(tokenResponse);

        return jsonObject;
    }


//    @ApiOperation("发送消息")
//    @PostMapping("/testPushMessage")
//    public String pushMessage(@RequestBody PushMessageToUserVo pushMessageToUserVo) throws Exception {
//        // 组装要发送的数据
//        JSONObject body = new JSONObject();
//        // 要推给谁
//        body.put("touser", pushMessageToUserVo.getTouser());
//        // 模板ID
//        body.put("template_id", "这里填写自己的模板id");
//
//        String accessToken = pushMessageToUserVo.getAccessToken();
//
//        // 创建消息和内容，这里可以自己定义，对应好模板就行
//        JSONObject data = new JSONObject();
//        data.put("name", new JSONObject().put("value", "做一个身体和心灵都勇敢的人，趁着身体未老，心灵还透明。晚安!"));
//        data.put("weather", new JSONObject().put("value", "阴天  19°c"));
//        data.put("birthday", new JSONObject().put("value", "53   天"));
//        body.put("data", data);
//
//        logger.info("body---->{}", body.toString());
//
//        String post = HttpUtils.sendPost("https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + accessToken, body.toString());
//        logger.info("通知到用户--->{}", post);
//        return body.toString();
//    }
}

